;; 全局启用 whitespace-mode
(setq whitespace-style '(face tabs trailing tab-mark) ;设置要显示的空白符号
      ;; 下面这行设置保存文件时自动清除多余空格，如果是只读模式则发出警告
      whitespace-action '(warn-if-read-only auto-cleanup)
      )
(global-whitespace-mode t)

(when (package-installed-p 'diminish)
  (diminish 'whitespace-mode)
  (diminish 'global-whitespace-mode))

;; 为特定模式启用whitespace
;; (dolist (hook '(prog-mode-hook conf-mode-hook latex-mode))
;;   (add-hook hook
;;             (lambda ()
;;                ;; 设置要显示的空白符号
;;               (setq whitespace-style '(face tabs trailing tab-mark)
;;               ;; 下面这行设置保存文件时自动清除多余空格，如果是只读模式则发出警告
;;                     whitespace-action '(warn-if-read-only auto-cleanup))
;;               (whitespace-mode t)
;;               (when (package-installed-p 'diminish)
;;                 (diminish 'whitespace-mode)))

;; (setq whitespace-style (quote (face spaces tabs newline space-mark tab-mark newline-mark )))
;; (face tabs spaces trailing lines lines-tail newline empty indentation indentation::tab indentation::space big-indent space-after-tab space-after-tab::tab space-after-tab::space space-before-tab space-before-tab::tab space-before-tab::space help-newline tab-mark space-mark newline-mark)
;; (setq whitespace-display-mappings
;;       '(
;;         '((space-mark   ?\     [?\xB7]      [?.])	; space
;;           (space-mark   ?\xA0  [?\xA4]      [?_])	; hard space
;;           (newline-mark ?\n    [?\xB6 ?\n]  [?$ ?\n])	; end-of-line
;;           (tabs         ?\t    [?» ?\t]     [?\\ ?\t])
;;           (tab-mark     ?\t    [?» ?\t]     [?\\ ?\t])
;;           ))


(provide 'init-whitespace)
